This invention relates to the use of a shared disk drive memory to maintain an operating system kernel for plural processors and, more particularly, to a method for enabling high speed access by the plural processors to the operating system kernel, via a directly connected bus system.
An initial program load occurs in a processor when power is first applied or when the processor""s reset function is enabled. During the initial program load, xe2x80x9cbootxe2x80x9d code is accessed from non-volatile storage and typically includes data for configuring the processor, procedures for enabling input/output communications, procedures for performing diagnostic routines and code which enables the loading of further operating system software.
During operation of the boot code, the operating system kernel, that is often stored on disk, is loaded into the processor. Such operating system kernel enables full functionality of the computer to be commenced.
In the prior art, various methods have been proposed to enable an operating system kernel to be loaded from one processor to another so as to avoid the necessity for all processors to store a copy of the operating system kernel. For example, U.S. Pat. No. 4,785,397 to Koizumi et al. describes a system for loading a program in a distributed processing system. In the Koizumi et al. system, a program is transferred from one information processing unit to another via an interconnecting network. Individual information processing units are enabled to selectively access a program from other information processing units via the network.
In U.S. Pat. No. 5,671,356 to Wang, a multinodal network is described wherein only one node in the network includes the xe2x80x9cfunctionalxe2x80x9d microcode (i.e., an operating system kernel). During power-up, the node with the functional microcode becomes fully operational, whereas other nodes merely execute their boot code and become partially operational. Those nodes then begin requesting transfer of the operating system kernel from adjacent nodes. The node with the fully operational operating system kernel responds to received requests and downloads the operating system kernel to requesting nodes, which in turn, download the operating system kernel to other requesting nodes, etc.
In such prior art, an intelligent server function is required to enable the downloading of the operating system kernel between nodes and to manage the data flow between the nodes and the system having the original copy of the operating system kernel. Such intervention of an intelligent processor delays the downloading of the operating system kernel and adds significant system overhead expense to accomplish the download action.
Accordingly, it is an object of this invention to provide an improved method and apparatus for enabling download of an operating system kernel from a central storage unit to plural client computers.
It is another object of this invention to provide a system wherein multiple client computers are enabled to rapidly download an operating system kernel, without the intervention of other intelligent processing systems.
The invention enables plural computers to initiate operation of respective operating systems through use of a shared operating system kernel. A system embodying the invention includes a central storage unit (e.g. a disk drive) that includes an operating system kernel, and plural computers, each computer including memory for holding initiation boot code that enables initial startup of the respective computer upon a power up or a reset. A channel communication link provides circuit connections between the central storage unit and each of the plural computers. Each of the plural computers responds to a power-up or reset action by initiating operation of respective ones of the boot codes. Each boot code, after initiating preliminary operations, performs an access of the operating system kernel from the central storage unit via the channel communication circuit so as to enable a high speed load of the kernel to the respective computer memories. The central storage unit also includes a configuration file that defines data which is utilized to alter the kernel for each particular computer. Each computer, upon downloading the kernel, accesses the configuration file so as to enable determination of which aspects of the kernel require modification for the respective computer.